Currently if a summary item signals that it has handled a click
itself, the tray hides itself. This behavior is wrong for the
On-Screen-Keyboard, which appears as a unit with the tray, so add
a property to opt-out of the default behavior.
https://bugzilla.gnome.org/show_bug.cgi?id=683546
_init: function(keyboard) {
this._keyboard = keyboard;
this.parent(_("Keyboard"), 'input-keyboard-symbolic');
+ this.keepTrayOnSummaryClick = true;
},
handleSummaryClick: function() {
this.isChat = false;
this.isMuted = false;
this.showInLockScreen = true;
+ this.keepTrayOnSummaryClick = false;
this.notifications = [];
},
_onSummaryItemClicked: function(summaryItem, button) {
if (summaryItem.source.handleSummaryClick()) {
- this._escapeTray();
+ if (summaryItem.source.keepTrayOnSummaryClick)
+ this._setClickedSummaryItem(null);
+ else
+ this._escapeTray();
} else {
if (!this._setClickedSummaryItem(summaryItem, button))
this._setClickedSummaryItem(null);